package com.ag.bean;

import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * TbShiftType entity.
 * 
 * @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "TB_SHIFT_TYPE", schema = "dbo", catalog = "AGDB")
public class TbShiftType implements java.io.Serializable {

	// Fields

	private String psId;
	private String psShift;
	private String a;
	private String b;
	private String c;
	private Set<TbDuty> tbDuties = new HashSet<TbDuty>(0);
	private Set<TbDetailShift> tbDetailShifts = new HashSet<TbDetailShift>(0);

	// Constructors

	/** default constructor */
	public TbShiftType() {
	}

	/** minimal constructor */
	public TbShiftType(String psId, String psShift) {
		this.psId = psId;
		this.psShift = psShift;
	}

	/** full constructor */
	public TbShiftType(String psId, String psShift, String a, String b,
			String c, Set<TbDuty> tbDuties, Set<TbDetailShift> tbDetailShifts) {
		this.psId = psId;
		this.psShift = psShift;
		this.a = a;
		this.b = b;
		this.c = c;
		this.tbDuties = tbDuties;
		this.tbDetailShifts = tbDetailShifts;
	}

	// Property accessors
	@Id
	@Column(name = "PS_ID", unique = true, nullable = false, length = 4)
	public String getPsId() {
		return this.psId;
	}

	public void setPsId(String psId) {
		this.psId = psId;
	}

	@Column(name = "PS_SHIFT", nullable = false, length = 10)
	public String getPsShift() {
		return this.psShift;
	}

	public void setPsShift(String psShift) {
		this.psShift = psShift;
	}

	@Column(name = "A", length = 10)
	public String getA() {
		return this.a;
	}

	public void setA(String a) {
		this.a = a;
	}

	@Column(name = "B", length = 10)
	public String getB() {
		return this.b;
	}

	public void setB(String b) {
		this.b = b;
	}

	@Column(name = "C", length = 10)
	public String getC() {
		return this.c;
	}

	public void setC(String c) {
		this.c = c;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "tbShiftType")
	public Set<TbDuty> getTbDuties() {
		return this.tbDuties;
	}

	public void setTbDuties(Set<TbDuty> tbDuties) {
		this.tbDuties = tbDuties;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "tbShiftType")
	public Set<TbDetailShift> getTbDetailShifts() {
		return this.tbDetailShifts;
	}

	public void setTbDetailShifts(Set<TbDetailShift> tbDetailShifts) {
		this.tbDetailShifts = tbDetailShifts;
	}

}